package com.candy.control;

import com.candy.bean.UserInfo;
import com.candy.dao.UserInfoMapper;
import com.candy.service.UserInfoService;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

@RestController
public class UserInfoController {
    @Autowired
    UserInfoService userInfoService;

    /**
     * 获取用户查询信息列表
     * @param pageNum 当前页
     * @param pageSize 显示几条数据
     * @param userInfo 条件查询时需要的参数，若不传，则默认查询全部
     * @return 包含了分页的信息以及分页查询后的结果
     */
    @RequestMapping("/getUserInfoes")
    public PageInfo<UserInfo> getUserInfoes(Integer pageNum,Integer pageSize,UserInfo userInfo){
//  调用PageHelper.startPage，跟在后面的第一个select语句会实现分页处理
        PageHelper.startPage(pageNum,pageSize);
//        调用业务逻辑持久层，执行查询操作
        List<UserInfo> userInfos=userInfoService.getUserInfoes(userInfo);
//        将查询后的结果放在pageInfo中，返回的数据包含分页后的数据，以及分页信息
        PageInfo<UserInfo> userInfoPageInfo=new PageInfo<>(userInfos);
        return userInfoPageInfo;
    }

    @RequestMapping("/editUserInfo")
    public String editUserInfo(UserInfo userInfo){
       int num= userInfoService.edituserInfo(userInfo);
       if(num>0){
           return "Ok";
       }else {
           return "eg";
       }
    }
    @RequestMapping("/deleteUserInfo")
    public String deleteUserInfo(UserInfo userInfo){
        int num= userInfoService.deleteUserInfo(userInfo);
        if(num>0){
            return "Ok";
        }else {
            return "eg";
        }
    }

}
